#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
#
# $Log: Makefile.in,v $
# Revision 1.1  2008/02/19 19:02:26  utke
# adding new version 2.8.0  failed in previous commit
#
# Revision 1.12  2005/04/05 09:21:57  gareth
# Fix for jira 1397. *Much* nicer make output. Thanks to Axel Weib.
#
# Revision 1.11  2004/09/08 13:56:56  peiyongz
# Apache License Version 2.0
#
# Revision 1.10  2004/07/09 16:32:08  peiyongz
# Build on HP-Itanium, aCC A.05.52
#
# Revision 1.9  2003/06/20 21:56:07  peiyongz
# Stateless Grammar Pool :: Part I
#
# Revision 1.8  2003/06/20 19:03:03  peiyongz
# Stateless Grammar Pool :: Part I
#
# Revision 1.7  2003/01/29 19:48:06  gareth
# updated for PSVIDefs.hpp
#
# Revision 1.6  2002/09/17 21:24:39  peiyongz
# RPM for Xerces2.1.0, patch from Thomas Woerner (thomas@linux.de)
#
# Revision 1.5  2002/07/26 16:49:29  tng
# [Bug 2681] Can't build with gcc/g++ not named 'gcc'/'g++'.  Patch from Jonathan Lennox.
#
# Revision 1.4  2002/05/21 19:33:44  tng
# DOM Reorganization: rename XSDIDOMParser to XSDDOMParser
#
# Revision 1.3  2002/03/21 15:34:40  knoaman
# Add support for reporting line/column numbers of schema errors.
#
# Revision 1.2  2002/02/11 18:19:19  tng
# [Bug 2715] Build recursion suppresses make failures.
#
# Revision 1.1.1.1  2002/02/01 22:22:45  peiyongz
# sane_include
#
# Revision 1.18  2001/11/02 14:13:45  knoaman
# Add support for identity constraints.
#
# Revision 1.17  2001/08/22 11:33:43  tng
# typo: XercesElementWildcard
#
# Revision 1.16  2001/08/21 15:58:42  tng
# Schema: New files XercesElementWildCard.
#
# Revision 1.15  2001/07/31 15:26:54  knoaman
# Added support for <attributeGroup>.
#
# Revision 1.14  2001/07/24 20:13:30  knoaman
# Added support for <group> + extra constraint checking for complexType
#
# Revision 1.13  2001/07/06 17:12:13  tng
# Automatic build of single-threaded library.  By Martin Kalen.
#
# Revision 1.12  2001/06/27 17:09:56  tng
# [Bug 1147] Headers install in wrong directory.  By Murray Cumming.
#
# Revision 1.11  2001/05/15 21:59:32  knoaman
# TraverseSchema: add attribute checking + some fixes + more error messages.
# More attribute cheking to come.
#
# Revision 1.10  2001/05/11 13:27:32  tng
# Copyright update.
#
# Revision 1.9  2001/05/10 16:33:15  knoaman
# Traverse Schema Part III + error messages.
#
# Revision 1.8  2001/05/03 20:34:42  tng
# Schema: SchemaValidator update
#
# Revision 1.7  2001/05/03 19:17:57  knoaman
# TraverseSchema Part II.
#
# Revision 1.6  2001/04/19 17:43:14  knoaman
# More schema implementation classes.
#
# Revision 1.5  2001/04/04 18:02:04  tng
# Schema: include failure on Unix for XUtil.cpp.  Fixed by Pei Yong Zhang.
#
# Revision 1.4  2001/03/30 16:06:00  tng
# Schema: XUtil, added by Pei Yong Zhang
#
# Revision 1.3  2001/03/21 21:56:33  tng
# Schema: Add Schema Grammar, Schema Validator, and split the DTDValidator into DTDValidator, DTDScanner, and DTDGrammar.
#
# Revision 1.2  2001/03/21 21:39:19  knoaman
# Schema symbols and Datatype validator part I
#
# Revision 1.1  2001/02/27 18:48:22  tng
# Schema: Add SchemaAttDef, SchemaElementDecl, SchemaAttDefList.
#
#

PLATFORM = @platform@
CC  = @cc@
CXX = @cxx@
CXXVER = @cxxver@
GCC = @GCC@
GXX = @GXX@
CXXFLAGS = @cxxflags@
CFLAGS = @cflags@
PREFIX = @prefix@
PREFIX_INCLUDE = @prefix_include@
LDFLAGS = @ldflags@
LIBS = @libs@
OSVER = @osver@
USELIBWWW = @uselibwww@
MESSAGELOADER = @messageloader@
TRANSCODER = @transcoder@
THREADS = @threads@
LIBTYPE = @libtype@
ARCH = @host_cpu@

include ../../Makefile.incl

MODULE = validators
SUBMODULE = schema
XML_INCL := $(XML_INCL) -I$(XERCESCROOT)/src

VALIDATORS_SCHEMA_CPP_PUBHEADERS = \
	ComplexTypeInfo.hpp \
	GeneralAttributeCheck.hpp \
	NamespaceScope.hpp \
	PSVIDefs.hpp \
	SchemaAttDef.hpp \
	SchemaAttDefList.hpp \
	SchemaElementDecl.hpp \
	SchemaGrammar.hpp \
	SchemaInfo.hpp \
	SchemaSymbols.hpp \
	SchemaValidator.hpp \
	SubstitutionGroupComparator.hpp \
	TraverseSchema.hpp \
	XercesAttGroupInfo.hpp \
	XercesElementWildcard.hpp \
	XercesGroupInfo.hpp \
	XMLSchemaDescriptionImpl.hpp \
	XUtil.hpp \
	XSDDOMParser.hpp \
	XSDLocator.hpp \
	XSDErrorReporter.hpp

VALIDATORS_SCHEMA_CPP_PRIVHEADERS =

VALIDATORS_SCHEMA_C_FILES =

VALIDATORS_SCHEMA_CPP_OBJECTS = \
	ComplexTypeInfo.$(TO) \
	GeneralAttributeCheck.$(TO) \
	NamespaceScope.$(TO) \
	SchemaAttDef.$(TO) \
	SchemaAttDefList.$(TO) \
	SchemaElementDecl.$(TO) \
	SchemaGrammar.$(TO) \
	SchemaInfo.$(TO) \
	SchemaSymbols.$(TO) \
	SchemaValidator.$(TO) \
	SubstitutionGroupComparator.$(TO) \
	TraverseSchema.$(TO) \
	XercesAttGroupInfo.$(TO) \
	XercesElementWildcard.$(TO) \
	XercesGroupInfo.$(TO) \
	XMLSchemaDescriptionImpl.$(TO) \
	XUtil.$(TO) \
	XSDDOMParser.$(TO) \
	XSDLocator.$(TO) \
	XSDErrorReporter.$(TO)

all::	includes $(VALIDATORS_SCHEMA_CPP_OBJECTS) identity

includes::	pubheaders $(VALIDATORS_SCHEMA_C_FILES)
	${MAKE} -C identity $@

identity::
	${MAKE} -C identity

pubheaders::
	$Qmkdir -p $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)
	@echo "  (CP)  $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)"
	$Q$(CP) $(VALIDATORS_SCHEMA_CPP_PUBHEADERS) $(VALIDATORS_SCHEMA_C_FILES) $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)

# this may generate unnecessary dependencies, but it makes life easier
depend:: includes
	@echo "  (DEP)"
	$Q$(MAKE_DEPEND) $(XML_INCL)  *.cpp > $(DEPFILE)

clean::
	@echo "Making clean in $(MODULE)/$(SUBMODULE) ..."
	$(RM2) $(addprefix $(XML_OBJ_DIR)/,$(VALIDATORS_SCHEMA_CPP_OBJECTS))
	${MAKE} -C identity $@

distclean::	clean
	$(RM) Makefile $(DEPFILE)
	@echo "Removing all $(MODULE)/$(SUBMODULE) header files ..."
	$(RM2) $(addprefix $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)/,$(VALIDATORS_SCHEMA_CPP_PUBHEADERS))
	${MAKE} -C identity $@

install::
	-mkdir -p $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
	$(CP) $(VALIDATORS_SCHEMA_CPP_PUBHEADERS) $(VALIDATORS_SCHEMA_C_FILES) $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
	${MAKE} -C identity $@
